Skip to content

fix(release): satisfy npm provenance so packages actually publish#18

Merged
Aayam Bansal (aayambansal) merged 1 commit into
mainfrom
release-provenance
Jul 4, 2026
Merged

fix(release): satisfy npm provenance so packages actually publish#18
Aayam Bansal (aayambansal) merged 1 commit into
mainfrom
release-provenance

Conversation

@aayambansal

Copy link
Copy Markdown
Member

The publish workflow ran green while every npm publish silently failed with:

npm error 422 Unprocessable Entity - PUT https://registry.npmjs.org/@synsci%2fopenscience-linux-x64-baseline
Error verifying sigstore provenance bundle: Failed to validate repository information:
package.json: "repository.url" is "", expected to match "https://github.com/synthetic-sciences/openscience"

With NPM_CONFIG_PROVENANCE=true, npm requires every published manifest's repository.url to match the repository the workflow runs from — case-sensitively. The generated platform/meta manifests had no repository field, sdk/plugin had none either, and root/launcher used a different-case path.

  • stamp repository into the generated platform + wrapper manifests (build/publish scripts)
  • add repository to the sdk and plugin packages
  • normalize existing repository URLs to the canonical lowercase path
  • the release orchestrator now records per-section failures and exits non-zero — a green publish run means packages really shipped (this failure mode was invisible because sections swallowed errors)

Verified: turbo typecheck clean. The v1.2.3 GitHub release with all 11 platform archives already shipped from the previous run; nothing was published to npm at 1.2.3, so re-dispatching after this merge will cleanly publish 1.2.3 everywhere.

The publish run went green while every npm publish silently failed with
E422: provenance validation requires repository.url to match the repo
the workflow runs from, and the generated platform/meta manifests had no
repository field at all (the sdk and plugin manifests likewise), while
the root and launcher manifests pointed at the wrong-case repo path.

- stamp repository into the generated platform and wrapper manifests
- add repository to the sdk and plugin packages
- normalize existing repository URLs to the canonical lowercase path
- release orchestration now records per-section failures and exits
  non-zero, so a green publish run means packages really shipped
@vercel

vercel Bot commented Jul 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openscience Ready Ready Preview, Comment Jul 4, 2026 7:20pm

Request Review

@aayambansal Aayam Bansal (aayambansal) merged commit 54e969e into main Jul 4, 2026
9 checks passed
@aayambansal Aayam Bansal (aayambansal) deleted the release-provenance branch July 4, 2026 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant